package org.hy.service.group;

import java.util.List;

import org.hy.domain.group.Group;

/**
 * 小组业务接口
 * @author xwm
 *
 */
public interface IGroupService {
	
	/**
	 * 最近注册的小组
	 * @param page
	 * @param num
	 * @return
	 */
	List<Group> listRecentGroup(int page,int num);
	
	/**
	 * 添加小组
	 * @param group
	 * @return
	 */
	int addGroup(Group group);
	
	/**
	 * 更新小组
	 * @param group
	 * @return
	 */
	int updateGroup(Group group);
	
	/**
	 * 删除小组
	 * @param id
	 * @return
	 */
	int deleteGroup(int id);
	
	/**
	 * 删除小组
	 * @param id
	 * @return
	 */
	Group findGroupById(int id);
	
	/**
	 * 查找用户创建的小组
	 * @param uid 用户id
	 * @return 小组列表
	 */
	List<Group> findGroupByUid(int uid,int page,int size);
	int countGroupByUid(int uid);
	
	
	/**
	 * 根据ID模糊查找小组
	 * @param id 包含的id
	 * @param page 页号
	 * @param size 每页记录数
	 * @return 小组列表
	 */
	List<Group> searchGroupById(int id,int page,int size);
	
	/**
	 *  统计根据ID模糊查找小组的数目
	 * @param id 包含的id
	 * @return 小组列表
	 */
	int countGroupById(int id);
	
	/**
	 * 根据小组名称模糊查找小组
	 * @param name 小组名称
	 * @param page 页号
	 * @param size 每页记录数
	 * @return 小组列表
	 */
	List<Group> searchGroupByName(String name,int page,int size);
	
	/**
	 * 统计根据小组名称模糊查找小组
	 * @param name 小组名称
	 * @return
	 */
	int countGroupByName(String name);
}
